/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.sadhar.sipp.perekamankomponenanggarangajibanpem;

import org.sadhar.sipp.perekamankomponenanggaranbiayagaji.*;
import org.sadhar.sia.framework.ClassApplicationModule;
import org.zkoss.zul.Listbox;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.Textbox;
import org.zkoss.zul.Window;

/**
 *
 * @author hendro
 */
public class DaftarKomponenPopupWnd extends ClassApplicationModule {

    private Listbox lstboxDaftarKomponen;
    private PerekamanKomponenAnggaranPendapatanGajiBANPEMDAO dao;
    private PerekamanKomponenAnggaranBiayaGajiDAO daoGaji;

    public DaftarKomponenPopupWnd() {
        dao = new PerekamanKomponenAnggaranPendapatanGajiBANPEMImpl();
        daoGaji = new PerekamanKomponenAnggaranBiayaGajiDAOImpl();
    }

    public void onCreate() throws Exception {
        lstboxDaftarKomponen = (Listbox) getFellow("lstboxDaftarKomponen");
        loadKomponenGaji();
    }

    private void loadKomponenGaji() throws Exception {
        lstboxDaftarKomponen.getItems().clear();
        for (PerekamanKomponenAnggaranGajiBanpem obj : dao.list()) {
            Listitem item = new Listitem();
            item.setValue(obj);
            if (obj.getIsKomponenGaji().equalsIgnoreCase("Y")) {
                item.appendChild(new Listcell(daoGaji.selectKomponeGaji(obj.getKodeKomponenGaji()).getNmKomponen()));
            } else {
                item.appendChild(new Listcell(obj.getKomponenDiluarGaji()));
            }
            item.appendChild(new Listcell(obj.getAlias()));
            lstboxDaftarKomponen.appendChild(item);
        }
    }

    public void lstboxDaftarKomponenOnSelect() throws Exception {
        PerekamanKomponenAnggaranGajiBanpem obj = (PerekamanKomponenAnggaranGajiBanpem)lstboxDaftarKomponen.getSelectedItem().getValue();
        Window window = (Window) this.getRoot().getFellow("contentDiv").getFirstChild();
        Textbox txtboxRumus = (Textbox) window.getFellow("txtboxRumus");
        txtboxRumus.setValue(txtboxRumus.getValue()+obj.getAlias());
        this.detach();
    }
}
